In modern cloud-based microservices and applications, service instances may have dynamically-assigned network locations. Moreover, the set of service instances may change dynamically because of auto-scaling, failures, upgrades, etc. As such, client code may need to use a more elaborate service discovery mechanism.
Additionally, conventional live-migration agents (LMAs) work with traditional load balancing systems which may read network locations of receiver servers from a configuration file that is only occasionally updated (i.e., static). However, updating the configuration file in the cloud native service scenario has proven more difficult.